home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
426-450
/
disk_436
/
batchrequester
/
batchrequester.mod
< prev
next >
Wrap
Text File
|
1992-05-06
|
2KB
|
83 lines
(* ------------------------------------------------------------------------
:Program. BatchRequester.mod
:Contents. Öffnet einen Filerequester und schreibt den Pfadnamen der
angeklickten Datei in eine Environment-Variable.
:Author. Christoph Teuber
:Copyright. Freeware
:Language. Oberon
:Translator. Amiga Oberon
:History. 1.1 3.Dez.1990
:Address. Rheinstr. 65, 5600 Wuppertal 1
:Phone. 0202/424394
:Usage. BatchRequester <Var-Name> <Titel> Pfadnamen
------------------------------------------------------------------------- *)
MODULE BatchRequester;
IMPORT Fr : FileReq,
Arg : Arguments,
FS : FileSystem,
io;
TYPE StringTyp = ARRAY 255 OF CHAR;
VAR FName,Titel,Enni : StringTyp;
Answer : BOOLEAN;
PROCEDURE ParseArgs (VAR Tl, Name, Enni : StringTyp);
(* Parameter lesen *)
VAR Argzahl : INTEGER;
BEGIN
Argzahl := Arg.NumArgs(); (* Anzahl ermitteln *)
IF (Argzahl >3) OR (Argzahl <1) THEN
io.WriteString("\n Willst Du mich beschummeln?\n Falsche Anzahl Parameter\n");
HALT(10);
END;
Arg.GetArg(1,Enni); (* Parameter lesen *)
IF Enni = "?" THEN
io.WriteString ("\nUsage: BatchRequester <var-name> <title> <filename>\n");
HALT(0);
END;
IF Argzahl >1 THEN Arg.GetArg(2,Tl); (* falls *)
IF Argzahl >2 THEN Arg.GetArg(3,Name) END; (* vorhanden *)
END;
END ParseArgs;
PROCEDURE CopyToVar (Name, Enni : StringTyp);
(* Filenamen in Variable schreiben *)
VAR geklappt : BOOLEAN;
Datei : FS.File;
BEGIN
geklappt := FS.Open(Datei, Enni, TRUE);
IF geklappt THEN
geklappt := FS.WriteString (Datei, Name);
IF geklappt THEN
geklappt := FS.Close(Datei);
END;
END;
IF NOT geklappt THEN
io.WriteString ("Fehler beim Schreiben!\n");
HALT(10)
END;
END CopyToVar;
BEGIN (* Hauptprogramm *)
io.WriteString ("BatchRequester 1.1, (c) 1990 by Christoph Teuber\n");
io.WriteString ("Freeware Rheinstr. 65\n");
io.WriteString (" 5600 Wuppertal 1\n");
io.WriteString (" West-Germany\n");
FName := "Ram:Test";
Titel := "BatchRequester";
ParseArgs (Titel, FName, Enni);
Answer := Fr.FileReq(Titel, FName);
IF Answer THEN CopyToVar (FName, Enni) END;
END BatchRequester.